//
//  SYUserAccount.swift
//  SYWeibo
//
//  Created by Saya on 16/4/10.
//  Copyright © 2016年 黄金果. All rights reserved.
//

import UIKit

class SYUserAccount: NSObject {
    
    //虽然后台返回的数据很多,但是就保存需要使用的数据
    var access_token:String?
    //如果使用基本数据类型,那么使用KVC不可以使用可选类型,如果使用可选类型,编译系统无法识别其类型,然后赋值的时候就会报错,要使用必选类型并且给一个初始值
    //expires_over,为什么没有使用计算型属性,因为每次调用都会计算,那么就永远不会过期,而didset只会在expires_in被赋值的时候根据expires_in的值来获得,所以会得到正确的值
    var expires_in:NSTimeInterval = 0 {
        didSet{
            expires_over = NSDate(timeIntervalSinceNow: expires_in)
        }
    }
    var expires_over:NSDate?
    var uid :String?
    var name:String?
    var avatar_large:String?
    
    //提供一个字典转模型的方法
    init(dict:[String:AnyObject]) {
        super.init()
        setValuesForKeysWithDictionary(dict)
    }
    
    //实现一下undefineKey 方法
    override func setValue(value: AnyObject?, forUndefinedKey key: String) {}
    
    //将对象转为字典
//    override var description:String = {
//        let dict:[String : AnyObject] =  self.dictionaryWithValuesForKeys(["access_token","expires_in","uid","name","avatar_large"])
//        return dict.description
//    }
}
